1. Field of the Invention
The present invention relates to document processing systems which carry out word processing and more particularly, to a document processing system capable of layout and display of such media as bit maps, graphic symbols, tables and formulas.
2. Description of the Related Art
Document editors operated on computer have been widely used so far in offices and homes. These years, it has been demanded for the document editors to edit not merely text documents but also hybrid or multi-media documents containing a mixture of texts, bit maps, graphic symbols, etc. Such conventional document editors allowing the editing of multi-media have been widely used. Documents to be edited by such editors comprise a medium content portion indicative of the data of media and a document structure portion indicative of data (such as pages, columns, rectangular regions in the columns, paragraphs and chapters) other than the media part. For example, as such document, there is a document which is based on the Office Document Architecture of International Organization for Standardization (ISO8613:1989, Information Processing--Text and Office Systems-Office Document Architecture (ODA) and Interchange Format)(which will be sometimes referred to as the ODA). For example, such a document as shown in FIG. 25 has such a layout structure as shown in FIG. 26. That is, in FIG. 26, a page 2600 has an all-column frame 2601 indicative of an all-column area and left and right column frames 2602. Each of the all-column frame 2601 and column frames 2602 further contains two blocks 2603. A relationship between the logical structure, layout structure and content portion of the document of FIG. 25 is shown in FIG. 27. In the drawing, a logical structure A includes logical objects indicative of a title, an author name, a heading, a paragraph and a graph, respectively. In FIG. 27, a layout structure B is a nested structure in which the page, frames and blocks are nested as shown in FIG. 26. Further, a content portion C is referred to by the logical and layout structures.
Document display and layout processing are carried out through the display and layout of the document structure and the display and layout of the content portion. In more detail, the display and layout of the document structure are realized by sequentially processing the respective objects of the document structure and for ones of the objects having their content portions, by calling the display and layout processing of the content portions. On the other hand, the display and layout of the content portion are realized by sequentially processing the respective elements of the content portion. The word `elements` as used herein refers to characters for a text, pixels for a bit map and graphic primitives such as lines/circles for graphics.
A flow of the display and layout processing of the document structure will be briefly explained by referring to a flowchart of FIG. 28.
More specifically, it is judged whether or not an object not processed yet is present in the document logical and layout structures (step 2801).
The presence of an object not processed causes the object in question to be extracted (step 2802) and be subjected to a predetermined processing (step 2803). For example, display processing includes positioning, while layout processing includes interpretation of layout control data.
Judgement is next made at a step 2804 as to whether or not the object extracted at the step 2802 has a content portion. The possession of the content portion causes the content display and layout processing to be called with respect to the content portion (step 2805) to perform the content display and layout processing. After completion of the step 2805, the system returns to the step 2801 to again execute the step 2801 and the subsequent steps. When no possession of the content portion is judged at the step 2804, the system also returns to the step 2801.
When necessary processing is completed at the step 2801 over all the objects in the document logical and layout structures, this processing ends.
Brief explanation will next be made as to a flow of the content display and layout processing called at the step 2805 by referring to a flowchart of FIG. 29.
First of all, it is judged whether or not the next element is present in the content portion (step 2901). The presence of the next element causes the element to be extracted (step 2902) and be subjected to its necessary processing (step 2908). For displaying, for example, the element is displayed: whereas, for layout processing, calculation is carried out to find a necessary space for the element.
Meanwhile, a multi-media document not only contains multiple media but also it is required to embed such media. More particularly, it is required to embed the content portion of a medium into the content portion of another medium. Examples of embedding a medium include embedding a text, a mathematical formula and/or a graph into a table and embedding a text, a mathematical formula and/or a table into a graph.
In the processing based on such a processing procedure as shown in FIGS. 28 and 29, however, since the content portion is limited to the content of one form of medium, it is impossible to embed another medium into the medium of the content portion.
For the purpose of realizing the embedding of another medium, such extension as to embed one content portion directly into another content portion has been proposed. More specifically:
(1) In order to embed a text into a graph as shown in FIG. 30(a), a content portion 3020 for the character text is directly embedded into a content portion 3010 for the graph as shown in FIGS. 30(b) and 30(c).
(2) In order to embed a mathematical formula into a graph as shown in FIG. 31(a), a content portion 3120 for the mathematical formula is directly embedded into a content portion 3110 for the graph as shown in FIGS. (31(b) and 31(c).
(3) In order to embed a text into a table as shown in FIG. 32(a), a content portion 3220 for the character text is directly embedded into a content portion 3210 for the table as shown in FIGS. 32(b) and 32(c).
With a document generating system based on the aforementioned ODA, in the above processing (1) and (2), the text is introduced into the graph as a graphic primitive in the content portion of the graph (more accurately, the text based on Computer Graphics Metafile (CGM) of the ODA is introduced) in order to embed a text into a graph. FIG. 33 is a flowchart for explaining a procedure of the content display and layout processing allowing calling of the display and layout of one content portion from the display and layout of another content portion. Brief explanation will then be made as to the flow of the content display and layout processing, with reference to the processing procedure of FIG. 33.
It is judged whether or not the next element is present in the content portion (step 3301). The presence of the next element causes the element to be extracted (step 3302), and it is judged whether or not the element is an embedded content portion (step 3303). Judgement of no next element at the step 3301 causes the system to be terminated.
When it is judged at the step 3303 that the element belongs to an embedded content portion, the content display and layout processing is called (step 3304) to perform the display and layout processing over the element. When it is judged at the step 3303 that the element is not an embedded content portion, on the other hand, the system performs processing (such as display processing of the element for display or calculation of its necessary space for layout processing) over the element extracted at the step 3302 (step 3305). When the step 3304 or 3305 is completed, the system returns to the step 3301 to again execute the step 3301 and subsequent steps.
However, the content display and layout system based on the flowchart of Fla. 33 (refer to FIGS. 30 to 32 for its specific medium embedding examples) has a problem that only when all of the combinations of calling of the display and layout processing for different forms of media are implemented, such medium embedding can be realized. Suppose now that there are 6 different sorts of media, that is, text, bit map, drawing, mathematical formula, table and graph. Then 6.times.6 combinations of calling of the display processing and 6.times.6 combinations of calling of the layout processing must be implemented. In addition, even when a new form of medium is added, such combinations corresponding to the new medium must be increased. For example, assume that, in addition to the above 6 forms of media, spreadsheet is added as a new medium. Then a total of 13 calling combinations must be added, that is, a sum of 7 combinations of calling of the display and layout processing of the above 6 media from the display and layout processing of the spreadsheet as well as 6 combinations of calling of the display and layout processing of the spreadsheet from the display and layout processing of the 6 media. Furthermore, even with respect to the editing operation for medium embedding, it is required to implement many combinations. In the above example, 36 embedding operations must be implemented.
With the prior art document generating system, since all of such combinations of calling the display and layout processing as mentioned above are not implemented, such medium embedding has not been fully achieved in actual situations. Further, the realization of embedding a medium into an embedded medium has not been practically achieved. More specifically, such combinations as to embed a mathematical formula further into a text in a graphic frame has not been realized so far.
Further, user interfaces for the embedding operation are not integrally defined necessarily. For example, in the case of a workstation (which is named "JStar", and available from Fuji Xerox Ltd.), embedding of the content portion of a text into the content portion of a graph (graphic frame) requires insertion of a frame (text frame) indicative of the text under a TRANSCRIBE command: while insertion of a text into a table (table frame) merely requires insertion of the character text (but another medium cannot be inserted). In this way, embedding operations are not uniformly defined necessarily. Such an unification in the user interfaces has led to the fact that it takes for a user to a lot of time to master its manipulation.
Furthermore, since a content portion is embedded directly into another content portion, it becomes difficult to describe such data as to be suitably expressed in terms of document structure. When such data is described in a content portion, this requires the content layout and display processing to become complicated, thus resulting in reduction of its processing efficiency.
Consider such a document having a boxed item as shown in FIG. 34, for example. The document has two left and right columns in its upper part and a boxed item 3400 in its lower part. The boxed item 3400, which is surrounded by a decorated ruled line, has 3 columns 3401, 3402 and 3403 and a 2-column graph 3404 (covering a 2-column range). In general, a boxed item, which has a plurality of columns and a plural-column graphic block, is similar in property to a page face. (In this sense, a boxed item is also known as a small set.) Since the decorated ruled line surrounding the boxed item is expressed as a graphic content portion, the body of the boxed item must be embedded into a graphic content portion. Accordingly, a boxed item is expressed in terms of a content portion or portions embedded into another content portion. In other words, in the case of such a boxed item 3400 as shown in FIG. 34, 3 character content portions 3501, 3502 and 3503 indicative of columns respectively and a graphic content portion 3504 indicative of a graph are embedded into a graphic content portion 3505 indicative of a decorated ruled line, as shown in FIG. 35. In this connection, the character content portion 3501 corresponds to the content of the column 8401 in FIG. 34, the character content portion 3502 corresponds to the content of the column 3402 in FIG. 34, the character content portion 3503 corresponds to the content of the column 3403 in FIG. 34, and the graphic content portion 3504 corresponds to the 2-column graph 3404 in FIG. 34, respectively.
The boxed item, though it has a similar property to a page face, is expressed in terms of not a document structure but a content portion. Further, layout processing of the page face is realized by means of document structure layout processing, but layout processing of the boxed item is realized by means of graphic content layout processing.
Therefore, character moving operation among columns, when the size of the graph is changed, is realized or implemented with respect to the page face, but cannot be applied to the layout processing within the boxed item. The implementation of a function equivalent to the character moving operation among columns at the time of the graph size change means that the implementation with the document structure layout processing is again implemented with the content layout processing, which results in that the processing becomes complicated. In addition, even when a page face having a layout similar to a boxed item to be prepared is already present, the user must specify the layout processing of the boxed item from the beginning with a very low editing efficiency.
In this way, in such a prior art layout system as mentioned above, it is impossible to embed a medium into an already-embedded medium and only when all combinations of calling the display and layout processing for every medium form are implemented, medium embedding can be realized. In other words, the medium embedding is individually realized, so that embedding of some form of medium cannot be realized or editing operation is not uniformly defined in actual situations.
Further, since a content portion is embedded directly into another content portion, it is hard to express such information as to be suitably expressed in terms of document structure. In addition, when such information as mentioned above is expressed in terms of content portion, the content layout and display processing become complicated and its processing efficiency is reduced.